Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v3: Add support for consistent documentation using markdownlint #3064

Merged
merged 13 commits into from
Jul 11, 2024

Conversation

gaby
Copy link
Member

@gaby gaby commented Jul 6, 2024

Description

  • Use markdownlint to have consistent rules across all markdown files.
  • Add workflow for checking markdown on each PR.
  • Replace inconsistent spaces / tabs in documentation with 4 spaces.
  • Hundreds of fixes/changes across all markdown files.
  • Removed legacy README.md from middlewares that were migrated to core: ex: adaptor and helmet

Fixes #2955

Changes introduced

  • Documentation Update: Detail the updates made to the documentation and links to the changed files.

Type of change

  • Documentation update (changes to documentation)

@gaby gaby added the v3 label Jul 6, 2024
@gaby gaby added this to the v3 milestone Jul 6, 2024
@gaby gaby requested a review from a team as a code owner July 6, 2024 07:21
@gaby gaby requested review from sixcolors, ReneWerner87 and efectn and removed request for a team July 6, 2024 07:21
Copy link
Contributor

coderabbitai bot commented Jul 6, 2024

Walkthrough

This pull request introduces a new GitHub Actions workflow for Markdown linting and standardizes the Fiber repository’s indentation style. It also includes updates to documentation and paths configurations for GitHub workflows, ensuring uniform formatting and path exclusion for specific file types.

Changes

File(s) Change Summary
.github/workflows/markdown.yml Introduces a markdownlint workflow to run markdownlint-cli2-action on Markdown files during push events on master or main branches, as well as pull requests.
.github/workflows/auto-labeler.yml, .github/workflows/benchmark.yml, .github/workflows/codeql-analysis.yml, .github/workflows/linter.yml, .github/workflows/test.yml, .github/workflows/vulncheck.yml Updates path configurations to use paths-ignore to exclude Markdown files from triggering workflows.
binder/README.md Adds documentation for a new request/response feature in Fiber called Binder, including default binders, struct validation, and custom binder definitions.
docs/middleware/limiter.md, docs/intro.md, docs/whats_new.md Standardizes indentation style and improves formatting for better readability. Adjusts method signatures and middleware configuration details in Fiber v3.

Assessment against linked issues

Objective Addressed Explanation
Use consistent indentation style (Issue #2955)
Exclude Markdown files from GitHub workflow triggers (No specific issue)
Introduce markdownlint GitHub action (No specific issue)

Poem

In the land of code, we made a stand,
With linting rules and markdown at hand.
Indentation fixed, no space or tab stray,
So Fiber’s docs shine bright today.
GitHub workflows now neatly ignore,
Markdown files, they trigger no more.
Rejoice, dear dev, in this tidy spree,
Our codebase thrives in harmony! 🌟🐇


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share
Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai generate interesting stats about this repository and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@gaby
Copy link
Member Author

gaby commented Jul 6, 2024

Sorry for the big PR :-)

Copy link

codecov bot commented Jul 6, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 83.10%. Comparing base (c579a1a) to head (ac83bac).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3064      +/-   ##
==========================================
- Coverage   83.12%   83.10%   -0.03%     
==========================================
  Files         115      115              
  Lines        8321     8321              
==========================================
- Hits         6917     6915       -2     
- Misses       1075     1076       +1     
- Partials      329      330       +1     
Flag Coverage Δ
unittests 83.10% <ø> (-0.03%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 12

Outside diff range and nitpick comments (10)
docs/extra/faq.md (4)

23-23: Grammar Correction: Use ordinal indicator for '404'

The word ‘404’ seems to be an ordinal number with a missing ordinal indicator (‘st’, ‘nd’, ‘rd’ or ‘th’).

- 404 response
+ 404th response

39-39: Grammar Correction: Missing comma

Add a comma after "page" for better readability.

- from the GitHub release page or by building the tool directly from source.
+ from the GitHub release page, or by building the tool directly from source.
Tools
LanguageTool

[uncategorized] ~39-~39: Possible missing comma found.
Context: ...perating system from the GitHub release page or by building the tool directly from s...

(AI_HYDRA_LEO_MISSING_COMMA)


97-97: Typo: Fix spacing around 'Discord'

There is a missing space between "Discord" and "server".

- Yes, we have our own [Discord](https://gofiber.io/discord)server, where we hang out.
+ Yes, we have our own [Discord](https://gofiber.io/discord) server, where we hang out.

104-104: Grammar Correction: Compound word

The term "sub domain" should be written as one word: "subdomain".

- Does fiber support sub domain routing ?
+ Does fiber support subdomain routing?
docs/client/hooks.md (2)

Line range hint 1-1: Typo: Correct spelling of 'process'

The word "proccess" is misspelled. It should be "process".

- Hooks are used to manipulate request/response proccess of Fiber client.
+ Hooks are used to manipulate request/response process of Fiber client.

140-140: Typo: Correct spelling of 'properties'

The word "proeprties" is misspelled. It should be "properties".

- according to client and request proeprties.
+ according to client and request properties.
docs/middleware/logger.md (1)

94-94: Typo: Correct spelling of 'os'

The word ‘os’ is not correct in this context. Use ‘OS’ instead.

- Writing to os.File is goroutine-safe, but if you are using a custom Output that is not goroutine-safe, make sure to implement locking to properly serialize writes.
+ Writing to OS.File is goroutine-safe, but if you are using a custom Output that is not goroutine-safe, make sure to implement locking to properly serialize writes.
Tools
LanguageTool

[grammar] ~94-~94: The word ‘os’ is not correct in this context. Use one of the suggestions or replace it with an appropriate verb.
Context: ...leColors: true, })) ``` :::tip Writing to os.File is goroutine-safe, but if you are ...

(VB_TO_NN_DT)

docs/middleware/keyauth.md (3)

77-77: Grammar Correction: Use periods in 'e.g.'

The abbreviation “e.g.” requires two periods.

- (eg. `authFilter`) like so
+ (e.g. `authFilter`) like so
Tools
LanguageTool

[uncategorized] ~77-~77: The abbreviation “e.g.” (= for example) requires two periods.
Context: ...of keyauth and apply a filter function (eg. authFilter) like so ```go package ma...

(E_G)


249-249: Grammar Correction: Loose punctuation mark

There is a misplaced punctuation mark.

- CustomKeyLookup(keyLookup string, authScheme string)`: This is the function that implements the default `KeyLookup` behavior, exposed to be used as a component of custom parsing logic
+ CustomKeyLookup(keyLookup string, authScheme string): This is the function that implements the default `KeyLookup` behavior, exposed to be used as a component of custom parsing logic
Tools
LanguageTool

[uncategorized] ~249-~249: Loose punctuation mark.
Context: ...up(keyLookup string, authScheme string)`: This is the function that implements th...

(UNLIKELY_OPENING_PUNCTUATION)


250-250: Grammar Correction: Use a comma before 'or'

Use a comma before “or” if it connects two independent clauses.

- until a key is found or the options are all exhausted.
+ until a key is found, or the options are all exhausted.
Tools
LanguageTool

[uncategorized] ~250-~250: Use a comma before “or” if it connects two independent clauses (unless they are closely connected and short).
Context: ... the above function until a key is found or the options are all exhausted. For exam...

(COMMA_COMPOUND_SENTENCE_2)

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between c579a1a and c92a9af.

Files selected for processing (55)
  • .github/CODE_OF_CONDUCT.md (1 hunks)
  • .github/CONTRIBUTING.md (2 hunks)
  • .github/README.md (7 hunks)
  • .github/SECURITY.md (5 hunks)
  • .github/pull_request_template.md (1 hunks)
  • .github/workflows/markdown.yml (1 hunks)
  • .markdownlint.yml (1 hunks)
  • Makefile (1 hunks)
  • addon/retry/README.md (3 hunks)
  • binder/README.md (6 hunks)
  • docs/api/app.md (11 hunks)
  • docs/api/bind.md (13 hunks)
  • docs/api/constants.md (2 hunks)
  • docs/api/ctx.md (11 hunks)
  • docs/api/fiber.md (3 hunks)
  • docs/api/hooks.md (6 hunks)
  • docs/api/log.md (6 hunks)
  • docs/api/redirect.md (1 hunks)
  • docs/client/examples.md (5 hunks)
  • docs/client/hooks.md (5 hunks)
  • docs/client/request.md (18 hunks)
  • docs/client/response.md (6 hunks)
  • docs/client/rest.md (13 hunks)
  • docs/extra/faq.md (5 hunks)
  • docs/guide/error-handling.md (1 hunks)
  • docs/guide/faster-fiber.md (2 hunks)
  • docs/guide/grouping.md (1 hunks)
  • docs/guide/routing.md (9 hunks)
  • docs/guide/templates.md (4 hunks)
  • docs/guide/utils.md (5 hunks)
  • docs/guide/validation.md (1 hunks)
  • docs/intro.md (3 hunks)
  • docs/middleware/adaptor.md (2 hunks)
  • docs/middleware/basicauth.md (1 hunks)
  • docs/middleware/cache.md (1 hunks)
  • docs/middleware/compress.md (2 hunks)
  • docs/middleware/cors.md (6 hunks)
  • docs/middleware/csrf.md (15 hunks)
  • docs/middleware/earlydata.md (4 hunks)
  • docs/middleware/encryptcookie.md (5 hunks)
  • docs/middleware/envvar.md (3 hunks)
  • docs/middleware/etag.md (1 hunks)
  • docs/middleware/expvar.md (1 hunks)
  • docs/middleware/favicon.md (2 hunks)
  • docs/middleware/healthcheck.md (2 hunks)
  • docs/middleware/helmet.md (2 hunks)
  • docs/middleware/idempotency.md (4 hunks)
  • docs/middleware/keyauth.md (5 hunks)
  • docs/middleware/limiter.md (3 hunks)
  • docs/middleware/logger.md (4 hunks)
  • docs/middleware/monitor.md (3 hunks)
  • docs/middleware/pprof.md (1 hunks)
  • docs/middleware/proxy.md (2 hunks)
  • docs/middleware/recover.md (1 hunks)
  • docs/middleware/redirect.md (2 hunks)
Files not processed due to max files limit (11)
  • docs/middleware/requestid.md
  • docs/middleware/rewrite.md
  • docs/middleware/session.md
  • docs/middleware/skip.md
  • docs/middleware/static.md
  • docs/middleware/timeout.md
  • docs/partials/routing/handler.md
  • docs/whats_new.md
  • middleware/adaptor/README.md
  • middleware/helmet/README.md
  • middleware/keyauth/README.md
Files skipped from review due to trivial changes (35)
  • .github/CODE_OF_CONDUCT.md
  • .github/CONTRIBUTING.md
  • .github/README.md
  • .github/SECURITY.md
  • .github/pull_request_template.md
  • .github/workflows/markdown.yml
  • Makefile
  • docs/api/app.md
  • docs/api/redirect.md
  • docs/client/examples.md
  • docs/client/response.md
  • docs/guide/error-handling.md
  • docs/guide/faster-fiber.md
  • docs/guide/grouping.md
  • docs/guide/templates.md
  • docs/guide/validation.md
  • docs/middleware/adaptor.md
  • docs/middleware/basicauth.md
  • docs/middleware/cache.md
  • docs/middleware/compress.md
  • docs/middleware/cors.md
  • docs/middleware/csrf.md
  • docs/middleware/earlydata.md
  • docs/middleware/encryptcookie.md
  • docs/middleware/envvar.md
  • docs/middleware/etag.md
  • docs/middleware/expvar.md
  • docs/middleware/favicon.md
  • docs/middleware/healthcheck.md
  • docs/middleware/helmet.md
  • docs/middleware/idempotency.md
  • docs/middleware/pprof.md
  • docs/middleware/proxy.md
  • docs/middleware/recover.md
  • docs/middleware/redirect.md
Additional context used
LanguageTool
addon/retry/README.md

[uncategorized] ~4-~4: You might be missing the article “an” here.
Context: ...ful network operations. This addon uses exponential backoff algorithm with jitter. It calls...

(AI_EN_LECTOR_MISSING_DETERMINER_AN)


[uncategorized] ~5-~5: You might be missing the article “an” here.
Context: ... all calls are failed, then, it returns error. It adds a jitter at each retry step be...

(AI_EN_LECTOR_MISSING_DETERMINER_AN)


[duplication] ~15-~15: Possible typo: you repeated a word
Context: ...ault Config](#default-config) - Custom Config - Config - [Default Config Example](#d...

(ENGLISH_WORD_REPEAT_RULE)

docs/api/hooks.md

[grammar] ~10-~10: The singular determiner ‘this’ may not agree with the plural noun ‘hooks’. Did you mean “these”?
Context: ... to run some methods. Here is a list of this hooks: - OnRoute - [OnName...

(THIS_NNS)


[uncategorized] ~220-~220: Use a comma before ‘and’ if it connects two independent clauses (unless they are closely connected and short).
Context: ...f you use one of these routes on sub app and you mount it; paths of routes and group...

(COMMA_COMPOUND_SENTENCE)

binder/README.md

[style] ~118-~118: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...make Fiber codebase minimal. But if you want to use your binders, it's easy to register...

(REP_WANT_TO_VB)


[style] ~167-~167: This phrase is redundant. Consider using “inside”.
Context: ...uct validation if you defined validator inside of the config. You can create own validato...

(OUTSIDE_OF)

docs/middleware/limiter.md

[style] ~71-~71: ‘take into account’ might be wordy. Consider a shorter alternative.
Context: ... ``` This means that every window will take into account the previous window(if there was any). ...

(EN_WORDINESS_PREMIUM_TAKE_INTO_ACCOUNT)

docs/intro.md

[uncategorized] ~115-~115: The preposition ‘to’ seems more likely in this position.
Context: ...POST, etc. - path is a virtual path on the server - func(fiber.Ctx) error is...

(AI_HYDRA_LEO_REPLACE_ON_TO)

docs/extra/faq.md

[grammar] ~25-~25: The word ‘404’ seems to be an ordinal number with a missing ordinal indicator (‘st’, ‘nd’, ‘rd’ or ‘th’).
Context: ...below all other functions) to handle a 404 response: ```go title="Example" app.Us...

(ORDINAL_NUMBER_MISSING_ORDINAL_INDICATOR)


[uncategorized] ~39-~39: Possible missing comma found.
Context: ...perating system from the GitHub release page or by building the tool directly from s...

(AI_HYDRA_LEO_MISSING_COMMA)


[misspelling] ~102-~102: This word is normally spelled as one.
Context: ...ort-discord.png) ## Does fiber support sub domain routing ? Yes we do, here are some exa...

(EN_COMPOUNDS_SUB_DOMAIN)

docs/middleware/logger.md

[grammar] ~94-~94: The word ‘os’ is not correct in this context. Use one of the suggestions or replace it with an appropriate verb.
Context: ...leColors: true, })) ``` :::tip Writing to os.File is goroutine-safe, but if you are ...

(VB_TO_NN_DT)

docs/middleware/keyauth.md

[uncategorized] ~77-~77: The abbreviation “e.g.” (= for example) requires two periods.
Context: ...of keyauth and apply a filter function (eg. authFilter) like so ```go package ma...

(E_G)


[uncategorized] ~249-~249: Loose punctuation mark.
Context: ...up(keyLookup string, authScheme string)`: This is the function that implements th...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~250-~250: Use a comma before “or” if it connects two independent clauses (unless they are closely connected and short).
Context: ... the above function until a key is found or the options are all exhausted. For exam...

(COMMA_COMPOUND_SENTENCE_2)

docs/guide/routing.md

[formatting] ~143-~143: If the ‘because’ clause is essential to the meaning, do not use a comma before the clause.
Context: ...e possibility of the regular expressions, because they are quite slow. The possibilities ...

(COMMA_BEFORE_BECAUSE)


[style] ~209-~209: The contraction ‘there’re’ is uncommon in written English.
Context: ...regex query when to register routes. So there're no performance overhead for regex const...

(THERE_RE_CONTRACTION_UNCOMMON)


[grammar] ~209-~209: Possible agreement error. Did you mean “overheads”?
Context: ...ster routes. So there're no performance overhead for regex constraint. ```go app.Get(`/...

(THERE_RE_MANY)

docs/api/bind.md

[misspelling] ~195-~195: Use “an” instead of ‘a’ if the following word starts with a vowel sound, e.g. ‘an article’, ‘an hour’.
Context: ...rsed. For example, if you want to parse a XML body with a field called Pass, you ...

(EN_A_VS_AN)


[typographical] ~333-~333: Consider adding a comma here.
Context: ...t" ``` :::info For more parser settings please look here [Config](fiber.md#enablesplit...

(PLEASE_COMMA)

docs/client/rest.md

[uncategorized] ~447-~447: A comma may be missing after the conjunctive/linking adverb ‘Also’.
Context: ...uests raised from this client instance. Also it can be overridden at request level h...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)


[uncategorized] ~457-~457: A comma may be missing after the conjunctive/linking adverb ‘Also’.
Context: ...uests raised from this client instance. Also it can be overridden at request level h...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)


[uncategorized] ~495-~495: A comma may be missing after the conjunctive/linking adverb ‘Also’.
Context: ...uests raised from this client instance. Also it can be overridden at request level p...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)


[uncategorized] ~505-~505: A comma may be missing after the conjunctive/linking adverb ‘Also’.
Context: ...uests raised from this client instance. Also it can be overridden at request level p...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)


[uncategorized] ~515-~515: A comma may be missing after the conjunctive/linking adverb ‘Also’.
Context: ...uests raised from this client instance. Also it can be overridden at request level p...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)


[uncategorized] ~572-~572: A comma may be missing after the conjunctive/linking adverb ‘Also’.
Context: ...uests raised from this client instance. Also it can be overridden at request level p...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)


[uncategorized] ~582-~582: A comma may be missing after the conjunctive/linking adverb ‘Also’.
Context: ...uests raised from this client instance. Also it can be overridden at request level p...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)


[uncategorized] ~644-~644: A comma may be missing after the conjunctive/linking adverb ‘Also’.
Context: ...uests raised from this client instance. Also it can be overridden at request level c...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)

docs/client/request.md

[uncategorized] ~207-~207: You might be missing the article “the” here.
Context: ...ntext.Context) *Request ``` ## Header Header method returns header value via key, th...

(AI_EN_LECTOR_MISSING_DETERMINER_THE)


[uncategorized] ~208-~208: The grammatical number of this noun doesn’t look right. Consider replacing it.
Context: ...lue via key, this method will visit all field in the header. ```go title="Signature"...

(AI_EN_LECTOR_REPLACEMENT_NOUN_NUMBER)

docs/api/fiber.md

[grammar] ~114-~114: Did you mean “customizing”? Or maybe you should add a pronoun? In active voice, ‘allow’ + ‘to’ takes an object, usually a pronoun.
Context: ... func() | Allows to customize success behavior when gracefully shutti...

(ALLOW_TO)

docs/api/ctx.md

[uncategorized] ~1468-~1468: Did you mean: “By default,”?
Context: ... data and sends a text/html response. By default Render uses the default [**Go Templat...

(BY_DEFAULT_COMMA)


[style] ~1468-~1468: To make your writing clearer, consider a more direct alternative.
Context: ...want to use another View engine, please take a look at our [Template middleware](h...

(TAKE_A_LOOK)

Additional comments not posted (52)
addon/retry/README.md (2)

45-48: Ensure the new custom configuration example is correct.

The new custom configuration example for retry.NewExponentialBackoff looks correct. Ensure that the default values align with the documentation.


15-15: Remove duplicated word "Config".

The word "Config" is repeated in the Table of Contents.

- - [Default Config](#default-config)
+ - [Default Config Example](#default-config-example)

Likely invalid or redundant comment.

Tools
LanguageTool

[duplication] ~15-~15: Possible typo: you repeated a word
Context: ...ault Config](#default-config) - Custom Config - Config - [Default Config Example](#d...

(ENGLISH_WORD_REPEAT_RULE)

docs/middleware/monitor.md (4)

17-18: Ensure the new function signature is correct.

The function signature for monitor.New looks correct. Ensure that it matches the implementation.


29-30: Ensure the import statements are correct.

The import statements for the Monitor middleware look correct. Ensure that they match the implementation.


45-45: Ensure the new example is correct.

The new example for initializing the Monitor middleware with a custom configuration looks correct. Ensure that it matches the implementation.


72-73: Ensure the new configuration details are correct.

The new configuration details for FontURL and ChartJsURL look correct. Ensure that they match the implementation.

docs/guide/utils.md (5)

22-22: Ensure the new example for Convert is correct.

The new example for the Convert function looks correct. Ensure that it matches the implementation.


47-51: Ensure the new example for GetReqHeader is correct.

The new example for the GetReqHeader function looks correct. Ensure that it matches the implementation.


72-74: Ensure the new example for Locals is correct.

The new example for the Locals function looks correct. Ensure that it matches the implementation.


99-103: Ensure the new example for Params is correct.

The new example for the Params function looks correct. Ensure that it matches the implementation.


118-122: Ensure the new example for Query is correct.

The new example for the Query function looks correct. Ensure that it matches the implementation.

docs/api/hooks.md (3)

62-64: Ensure the new example for OnName is correct.

The new example for the OnName hook looks correct. Ensure that it matches the implementation.


143-143: Ensure the new example for OnListen is correct.

The new example for the OnListen hook looks correct. Ensure that it matches the implementation.


190-192: Ensure the new example for OnMount is correct.

The new example for the OnMount hook looks correct. Ensure that it matches the implementation.

docs/api/log.md (1)

16-22: Log levels added correctly.

The log levels are listed and formatted correctly.

binder/README.md (2)

38-47: Examples and guides are well-structured.

The examples and guides are clear and well-structured.

Also applies to: 69-79, 100-108, 122-156, 171-200


88-91: Fix redundant phrase.

Remove the redundant phrase "inside of the config" and replace it with "inside the config".

- if you defined validator inside of the config.
+ if you defined validator inside the config.

Likely invalid or redundant comment.

docs/intro.md (1)

57-60: Examples and guides are well-structured.

The examples and guides are clear and well-structured.

Also applies to: 68-68, 84-90, 118-134, 144-148, 158-159

.markdownlint.yml (5)

9-10: LGTM! Enforcing heading levels to increment by one level at a time.

Setting MD001 to true helps maintain a consistent heading structure.


12-15: LGTM! Enforcing a consistent heading style.

Setting MD003 with style: "consistent" ensures uniform heading styles.


17-20: LGTM! Enforcing a consistent unordered list style.

Setting MD004 with style: "consistent" ensures uniform list styles.


25-32: LGTM! Enforcing unordered list indentation with specific configurations.

Setting MD007 with detailed configurations ensures flexible and consistent list indentation.


34-41: LGTM! Enforcing no trailing spaces with specific configurations.

Setting MD009 with detailed configurations ensures flexible and consistent handling of trailing spaces.

docs/guide/routing.md (5)

23-30: LGTM! Clear examples of route paths based on strings.

The examples are well-defined and follow best practices for defining routes.


Line range hint 59-98: LGTM! Clear examples of route paths with parameters.

The examples are well-defined and follow best practices for defining routes with parameters.


Line range hint 146-205: LGTM! Clear examples of route constraints.

The examples are well-defined and follow best practices for defining route constraints.


253-298: LGTM! Clear examples of custom constraints.

The examples are well-defined and follow best practices for defining custom constraints.


310-318: LGTM! Clear examples of middleware functions.

The examples are well-defined and follow best practices for defining middleware functions.

docs/api/bind.md (4)

21-21: LGTM! Clear examples of binding request bodies to structs.

The examples are well-defined and follow best practices for binding request bodies.


22-22: LGTM! Clear examples of binding form bodies to structs.

The examples are well-defined and follow best practices for binding form bodies.


23-23: LGTM! Clear examples of binding JSON bodies to structs.

The examples are well-defined and follow best practices for binding JSON bodies.


24-24: LGTM! Clear examples of binding multipart form bodies to structs.

The examples are well-defined and follow best practices for binding multipart form bodies.

docs/api/constants.md (4)

8-8: LGTM! Well-defined constants for HTTP methods.

The constants follow best practices for defining HTTP methods.


29-48: LGTM! Well-defined constants for commonly used MIME types.

The constants follow best practices for defining MIME types.


55-116: LGTM! Well-defined constants for HTTP status codes.

The constants follow best practices for defining HTTP status codes.


124-163: LGTM! Well-defined constants for error handling.

The constants follow best practices for defining errors.

docs/client/rest.md (6)

13-17: Feature addition looks good.

The new feature "Timeouts & Retries" has been accurately added to the list of features.


27-30: Import statement looks good.

The import statement for the client package is necessary for the example code provided.


34-41: Example code looks good.

The example code for creating a new client and setting a timeout is clear and demonstrates the usage of the new SetTimeout method.


52-94: Client struct update looks good.

The new fields and hooks for request and response are well-documented and follow the existing structure of the Client struct.


180-194: Config struct update looks good.

The new fields Timeout and MaxRedirects are well-documented and follow the existing structure of the Config struct.


Line range hint 398-413: Example code looks good.

The example code for setting the base URL and making a GET request is clear and demonstrates the usage of the new SetBaseURL method.

docs/client/request.md (4)

21-42: Request struct update looks good.

The new fields timeout and maxRedirects are well-documented and follow the existing structure of the Request struct.


528-534: Example code looks good.

The example code for setting multiple cookies is clear and demonstrates the usage of the new SetCookies method.


Line range hint 694-700: Example code looks good.

The example code for adding form data is clear and demonstrates the usage of the new AddFormData method.


Line range hint 931-960: Example code looks good.

The example code for setting a timeout and handling a delayed response is clear and demonstrates the usage of the new SetTimeout method.

docs/api/fiber.md (3)

Line range hint 184-184: Config struct update looks good.

The new field CompressedFileSuffixes is well-documented and follows the existing structure of the Config struct.


Line range hint 184-184: Config struct update looks good.

The new field CompressedFileSuffixes is well-documented and follows the existing structure of the Config struct.


Line range hint 398-413: Example code looks good.

The example code for setting the base URL and making a GET request is clear and demonstrates the usage of the new SetBaseURL method.

docs/api/ctx.md (3)

377-387: Addition of SessionOnly field in Cookie struct looks good.

The new SessionOnly field is consistent with the other fields in the Cookie struct.


Line range hint 1208-1228:
Introduction of generic Params function looks good.

The generic Params function enhances the flexibility of parameter handling by supporting various data types.


Line range hint 1387-1417:
Introduction of generic Query function looks good.

The generic Query function simplifies the retrieval process of different types of query parameters by supporting various data types.

binder/README.md Outdated Show resolved Hide resolved
binder/README.md Outdated Show resolved Hide resolved
binder/README.md Outdated Show resolved Hide resolved
binder/README.md Outdated Show resolved Hide resolved
addon/retry/README.md Outdated Show resolved Hide resolved
docs/middleware/limiter.md Outdated Show resolved Hide resolved
docs/api/hooks.md Outdated Show resolved Hide resolved
docs/api/hooks.md Outdated Show resolved Hide resolved
docs/api/bind.md Outdated Show resolved Hide resolved
docs/api/fiber.md Outdated Show resolved Hide resolved
gaby and others added 3 commits July 6, 2024 03:38
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Outside diff range and nitpick comments (14)
addon/retry/README.md (5)

4-5: Add missing article "an".

The phrase "exponential backoff algorithm" should be preceded by "an" to be grammatically correct.

- This addon uses exponential backoff algorithm with jitter.
+ This addon uses an exponential backoff algorithm with jitter.

5-5: Add missing article "an".

The phrase "returns error" should be preceded by "an" to be grammatically correct.

- If all calls are failed, then, it returns error.
+ If all calls are failed, then, it returns an error.

11-17: Remove redundant Table of Contents entry.

The Table of Contents contains a duplicate entry for "Default Config".

- [Default Config](#default-config)
Tools
LanguageTool

[duplication] ~15-~15: Possible typo: you repeated a word
Context: ...ault Config](#default-config) - Custom Config - Config - [Default Config Example](#d...

(ENGLISH_WORD_REPEAT_RULE)


45-48: Ensure consistent code formatting.

Add a blank line after the opening brace and before the closing brace for better readability.

retry.NewExponentialBackoff(retry.Config{
+    
    InitialInterval: 2 * time.Second,
    MaxBackoffTime:  64 * time.Second,
    Multiplier:      2.0,
    MaxRetryCount:   15,
+    
})

91-95: Ensure consistent code formatting.

Add a blank line after the opening brace and before the closing brace for better readability.

var DefaultConfig = Config{
+    
    InitialInterval: 1 * time.Second,
    MaxBackoffTime:  32 * time.Second,
    Multiplier:      2.0,
    MaxRetryCount:   10,
    currentInterval: 1 * time.Second,
+    
}
docs/api/hooks.md (2)

10-10: Fix grammatical error.

The singular determiner "this" should be "these" to agree with the plural noun "hooks".

- Here is a list of this hooks:
+ Here is a list of these hooks:

220-220: Add comma before "and".

Use a comma before "and" to separate two independent clauses.

- If you use one of these routes on sub app and you mount it; paths of routes and groups will start with mount prefix.
+ If you use one of these routes on sub app, and you mount it; paths of routes and groups will start with mount prefix.
binder/README.md (5)

3-4: Fix grammatical error.

Correct the phrase "By aganist old Fiber parsers" to "Against the old Fiber parsers".

- Binder is new request/response binding feature for Fiber. By aganist old Fiber parsers, it supports custom binder registration, struct validation, `map[string]string`, `map[string][]string` and more.
+ Binder is a new request/response binding feature for Fiber. Against the old Fiber parsers, it supports custom binder registration, struct validation, `map[string]string`, `map[string][]string`, and more.

28-29: Fix grammatical error.

Correct the phrase "Here's an example for it" to "Here's an example:".

- Here's an example for it:
+ Here's an example:

117-118: Fix redundant phrase.

Remove the redundant phrase "But if you want to use your binders, it's easy to register" and replace it with "If you want to use your own binders, it's easy to register".

- But if you want to use your binders, it's easy to register
+ If you want to use your own binders, it's easy to register
Tools
LanguageTool

[uncategorized] ~117-~117: You might be missing the article “the” here.
Context: ...nder We didn't add much binder to make Fiber codebase minimal. If you want to use yo...

(AI_EN_LECTOR_MISSING_DETERMINER_THE)


[style] ~117-~117: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ... to make Fiber codebase minimal. If you want to use your own binders, it's easy to regi...

(REP_WANT_TO_VB)


[uncategorized] ~117-~117: You might be missing the article “the” here.
Context: ...ter and use them. Here's an example for TOML binder. ```go type Person struct { ...

(AI_EN_LECTOR_MISSING_DETERMINER_THE)


166-167: Fix grammatical error.

Correct the phrase "Here's an example for it" to "Here's an example:".

- Here's an example for it:
+ Here's an example:
Tools
LanguageTool

[uncategorized] ~166-~166: This verb may not be in the correct form. Consider using a different form for this context.
Context: ...ing Custom Validator All Fiber binders supporting struct validation if you defined valida...

(AI_EN_LECTOR_REPLACEMENT_VERB_FORM)


[uncategorized] ~166-~166: This verb may not be in the correct tense. Consider changing the tense to fit the context better.
Context: ...ers supporting struct validation if you defined validator inside of the config. You can...

(AI_EN_LECTOR_REPLACEMENT_VERB_TENSE)


[uncategorized] ~166-~166: You might be missing the article “a” here.
Context: ...orting struct validation if you defined validator inside of the config. You can create ow...

(AI_EN_LECTOR_MISSING_DETERMINER_A)


[style] ~166-~166: This phrase is redundant. Consider using “inside”.
Context: ...uct validation if you defined validator inside of the config. You can create own validato...

(OUTSIDE_OF)


[uncategorized] ~166-~166: A determiner appears to be missing. Consider inserting it.
Context: ...or inside of the config. You can create own validator, or use [go-playground/valida...

(AI_EN_LECTOR_MISSING_DETERMINER)


[uncategorized] ~166-~166: Possible missing article found.
Context: ...zzo-validation)... Here's an example of simple custom validator: ```go type Query str...

(AI_HYDRA_LEO_MISSING_A)


166-166: Fix grammatical error.

Correct the phrase "By aganist old Fiber parsers" to "Against the old Fiber parsers".

- By aganist old Fiber parsers, it supports custom binder registration, struct validation, `map[string]string`, `map[string][]string` and more.
+ Against the old Fiber parsers, it supports custom binder registration, struct validation, `map[string]string`, `map[string][]string`, and more.
Tools
LanguageTool

[uncategorized] ~166-~166: This verb may not be in the correct form. Consider using a different form for this context.
Context: ...ing Custom Validator All Fiber binders supporting struct validation if you defined valida...

(AI_EN_LECTOR_REPLACEMENT_VERB_FORM)


[uncategorized] ~166-~166: This verb may not be in the correct tense. Consider changing the tense to fit the context better.
Context: ...ers supporting struct validation if you defined validator inside of the config. You can...

(AI_EN_LECTOR_REPLACEMENT_VERB_TENSE)


[uncategorized] ~166-~166: You might be missing the article “a” here.
Context: ...orting struct validation if you defined validator inside of the config. You can create ow...

(AI_EN_LECTOR_MISSING_DETERMINER_A)


[style] ~166-~166: This phrase is redundant. Consider using “inside”.
Context: ...uct validation if you defined validator inside of the config. You can create own validato...

(OUTSIDE_OF)


[uncategorized] ~166-~166: A determiner appears to be missing. Consider inserting it.
Context: ...or inside of the config. You can create own validator, or use [go-playground/valida...

(AI_EN_LECTOR_MISSING_DETERMINER)


[uncategorized] ~166-~166: Possible missing article found.
Context: ...zzo-validation)... Here's an example of simple custom validator: ```go type Query str...

(AI_HYDRA_LEO_MISSING_A)

docs/api/bind.md (2)

195-195: Fix the grammatical error.

Use “an” instead of ‘a’ if the following word starts with a vowel sound.

- For example, if you want to parse a XML body with a field called Pass, you would use a struct field of `xml:"pass"`.
+ For example, if you want to parse an XML body with a field called Pass, you would use a struct field of `xml:"pass"`.

333-333: Consider adding a comma here.

A comma might be missing here.

- For more parser settings please look here [Config](fiber.md#enablesplittingonparsers)
+ For more parser settings, please look here [Config](fiber.md#enablesplittingonparsers)
Tools
LanguageTool

[typographical] ~333-~333: Consider adding a comma here.
Context: ...t" ``` :::info For more parser settings please look here [Config](fiber.md#enablesplit...

(PLEASE_COMMA)

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between c92a9af and 7d30a4e.

Files selected for processing (6)
  • addon/retry/README.md (3 hunks)
  • binder/README.md (6 hunks)
  • docs/api/bind.md (13 hunks)
  • docs/api/fiber.md (3 hunks)
  • docs/api/hooks.md (6 hunks)
  • docs/middleware/limiter.md (3 hunks)
Files skipped from review as they are similar to previous changes (2)
  • docs/api/fiber.md
  • docs/middleware/limiter.md
Additional context used
LanguageTool
addon/retry/README.md

[duplication] ~15-~15: Possible typo: you repeated a word
Context: ...ault Config](#default-config) - Custom Config - Config - [Default Config Example](#d...

(ENGLISH_WORD_REPEAT_RULE)

binder/README.md

[uncategorized] ~89-~89: A comma might be missing here.
Context: ...you can prefer Must(). If there's an error it'll return error and 400 as HTTP stat...

(AI_EN_LECTOR_MISSING_PUNCTUATION_COMMA)


[uncategorized] ~89-~89: The preposition “of” seems more likely in this position.
Context: ...d 400 as HTTP status. Here's an example for it: ```go // Field names should start ...

(AI_EN_LECTOR_REPLACEMENT_PREPOSITION)


[uncategorized] ~117-~117: You might be missing the article “the” here.
Context: ...nder We didn't add much binder to make Fiber codebase minimal. If you want to use yo...

(AI_EN_LECTOR_MISSING_DETERMINER_THE)


[style] ~117-~117: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ... to make Fiber codebase minimal. If you want to use your own binders, it's easy to regi...

(REP_WANT_TO_VB)


[uncategorized] ~117-~117: You might be missing the article “the” here.
Context: ...ter and use them. Here's an example for TOML binder. ```go type Person struct { ...

(AI_EN_LECTOR_MISSING_DETERMINER_THE)


[uncategorized] ~166-~166: This verb may not be in the correct form. Consider using a different form for this context.
Context: ...ing Custom Validator All Fiber binders supporting struct validation if you defined valida...

(AI_EN_LECTOR_REPLACEMENT_VERB_FORM)


[uncategorized] ~166-~166: This verb may not be in the correct tense. Consider changing the tense to fit the context better.
Context: ...ers supporting struct validation if you defined validator inside of the config. You can...

(AI_EN_LECTOR_REPLACEMENT_VERB_TENSE)


[uncategorized] ~166-~166: You might be missing the article “a” here.
Context: ...orting struct validation if you defined validator inside of the config. You can create ow...

(AI_EN_LECTOR_MISSING_DETERMINER_A)


[style] ~166-~166: This phrase is redundant. Consider using “inside”.
Context: ...uct validation if you defined validator inside of the config. You can create own validato...

(OUTSIDE_OF)


[uncategorized] ~166-~166: A determiner appears to be missing. Consider inserting it.
Context: ...or inside of the config. You can create own validator, or use [go-playground/valida...

(AI_EN_LECTOR_MISSING_DETERMINER)


[uncategorized] ~166-~166: Possible missing article found.
Context: ...zzo-validation)... Here's an example of simple custom validator: ```go type Query str...

(AI_HYDRA_LEO_MISSING_A)

docs/api/bind.md

[typographical] ~333-~333: Consider adding a comma here.
Context: ...t" ``` :::info For more parser settings please look here [Config](fiber.md#enablesplit...

(PLEASE_COMMA)

Markdownlint
binder/README.md

66-66: null
Fenced code blocks should be surrounded by blank lines

(MD031, blanks-around-fences)

GitHub Check: markdownlint
binder/README.md

[failure] 66-66: Fenced code blocks should be surrounded by blank lines
binder/README.md:66 MD031/blanks-around-fences Fenced code blocks should be surrounded by blank lines [Context: "```go"] https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md031.md

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Outside diff range and nitpick comments (6)
binder/README.md (6)

3-3: Fix grammatical error.

Correct the phrase "Against the old Fiber parsers" to "Compared to the old Fiber parsers."

- Against the old Fiber parsers, it supports custom binder registration, struct validation, `map[string]string`, `map[string][]string`, and more.
+ Compared to the old Fiber parsers, it supports custom binder registration, struct validation, `map[string]string`, `map[string][]string`, and more.

28-28: Fix grammatical error.

Correct the phrase "Here's an example for it" to "Here's an example:"

- Here's an example for it:
+ Here's an example:

65-65: Fix grammatical error.

Correct the phrase "Here's an example for it" to "Here's an example:"

- Here's an example for it:
+ Here's an example:

91-91: Fix grammatical error.

Correct the phrase "Here's an example for it" to "Here's an example:"

- Here's an example for it:
+ Here's an example:

118-118: Fix grammatical error.

Correct the phrase "Here's an example for TOML binder" to "Here's an example of a TOML binder."

- Here's an example for TOML binder.
+ Here's an example of a TOML binder.
Tools
LanguageTool

[style] ~118-~118: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ... to make Fiber codebase minimal. If you want to use your own binders, it's easy to regi...

(REP_WANT_TO_VB)


167-167: Fix grammatical error.

Correct the phrase "Here's an example of simple custom validator" to "Here's an example of a simple custom validator."

- Here's an example of simple custom validator:
+ Here's an example of a simple custom validator:
Tools
LanguageTool

[style] ~167-~167: This phrase is redundant. Consider using “inside”.
Context: ...uct validation if you defined validator inside of the config. You can create own validato...

(OUTSIDE_OF)


[uncategorized] ~167-~167: Possible missing article found.
Context: ...zzo-validation)... Here's an example of simple custom validator: ```go type Query str...

(AI_HYDRA_LEO_MISSING_A)

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 7d30a4e and 5e17ab0.

Files selected for processing (3)
  • .github/workflows/markdown.yml (1 hunks)
  • binder/README.md (6 hunks)
  • docs/middleware/limiter.md (3 hunks)
Files skipped from review as they are similar to previous changes (2)
  • .github/workflows/markdown.yml
  • docs/middleware/limiter.md
Additional context used
LanguageTool
binder/README.md

[uncategorized] ~90-~90: Possible missing comma found.
Context: ...you can prefer Must(). If there's an error it'll return error and 400 as HTTP stat...

(AI_HYDRA_LEO_MISSING_COMMA)


[style] ~118-~118: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ... to make Fiber codebase minimal. If you want to use your own binders, it's easy to regi...

(REP_WANT_TO_VB)


[style] ~167-~167: This phrase is redundant. Consider using “inside”.
Context: ...uct validation if you defined validator inside of the config. You can create own validato...

(OUTSIDE_OF)


[uncategorized] ~167-~167: Possible missing article found.
Context: ...zzo-validation)... Here's an example of simple custom validator: ```go type Query str...

(AI_HYDRA_LEO_MISSING_A)

Additional comments not posted (1)
binder/README.md (1)

14-14: LGTM!

The list of default binders is clear and accurate.

@gaby
Copy link
Member Author

gaby commented Jul 8, 2024

@coderabbitai Read all the markdown files in this repo using the following glob: "**/*.md" and report any spelling / wording / syntax issues you find.

@gofiber gofiber deleted a comment from coderabbitai bot Jul 8, 2024
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Outside diff range and nitpick comments (8)
docs/intro.md (1)

115-115: Fix the preposition usage.

The preposition 'to' seems more appropriate in this context.

- `path` is a virtual path on the server
+ `path` is a virtual path to the server
Tools
LanguageTool

[uncategorized] ~115-~115: The preposition ‘to’ seems more likely in this position.
Context: ...POST, etc. - path is a virtual path on the server - func(fiber.Ctx) error is...

(AI_HYDRA_LEO_REPLACE_ON_TO)

docs/whats_new.md (7)

52-53: Fix the missing preposition.

The sentence seems to be missing a preposition.

- Static -> has been removed and moved to [static middleware](./middleware/static.md)
+ Static -> has been removed and moved to the [static middleware](./middleware/static.md)
Tools
LanguageTool

[grammar] ~52-~52: It looks like there is a word missing here. Did you mean “listen to config”?
Context: ...ic.md) - app.Config properties moved to listen config - DisableStartupMessage - EnablePre...

(LISTEN_TO_ME)


198-206: Use the official spelling "Express.js".

The official spelling of the framework is "Express.js".

- AutoFormat -> ExpressJs like
- Host -> ExpressJs like
- Port -> ExpressJs like
- Schema -> ExpressJs like
- SendStream -> ExpressJs like
- SendString -> ExpressJs like
- String -> ExpressJs like
+ AutoFormat -> Express.js like
+ Host -> Express.js like
+ Port -> Express.js like
+ Schema -> Express.js like
+ SendStream -> Express.js like
+ SendString -> Express.js like
+ String -> Express.js like
Tools
LanguageTool

[uncategorized] ~198-~198: The official spelling of this programming framework is “Express.js”.
Context: ...king. ### new methods - AutoFormat -> ExpressJs like - Host -> ExpressJs like - Port ->...

(NODE_JS)


[uncategorized] ~199-~199: The official spelling of this programming framework is “Express.js”.
Context: ... AutoFormat -> ExpressJs like - Host -> ExpressJs like - Port -> ExpressJs like - IsProxy...

(NODE_JS)


[uncategorized] ~200-~200: The official spelling of this programming framework is “Express.js”.
Context: ...like - Host -> ExpressJs like - Port -> ExpressJs like - IsProxyTrusted - Reset - Schema ...

(NODE_JS)


[uncategorized] ~203-~203: The official spelling of this programming framework is “Express.js”.
Context: ...ke - IsProxyTrusted - Reset - Schema -> ExpressJs like - SendStream -> ExpressJs like - S...

(NODE_JS)


[uncategorized] ~204-~204: The official spelling of this programming framework is “Express.js”.
Context: ...chema -> ExpressJs like - SendStream -> ExpressJs like - SendString -> ExpressJs like - S...

(NODE_JS)


[uncategorized] ~205-~205: The official spelling of this programming framework is “Express.js”.
Context: ...tream -> ExpressJs like - SendString -> ExpressJs like - String -> ExpressJs like - ViewB...

(NODE_JS)


[uncategorized] ~206-~206: The official spelling of this programming framework is “Express.js”.
Context: ...endString -> ExpressJs like - String -> ExpressJs like - ViewBind -> instead of Bind ###...

(NODE_JS)


266-266: Rephrase the sentence for clarity.

The sentence can be rephrased to improve clarity.

- This new field is a boolean that allows you to control whether private networks are allowed.
+ This new field is a boolean that controls whether private networks are allowed.

270-270: Fix the loose punctuation mark.

The sentence contains a loose punctuation mark.

- `Config.AllowOrigins`: Now accepts a slice of strings, each representing an allowed origin.
+ `Config.AllowOrigins`: Now accepts a slice of strings, each representing an allowed origin

56-56: Avoid adverb repetition.

The adverb 'previously' is used twice in the sentence.

- EnablePrefork -> previously Prefork
- ListenerNetwork -> previously Network
+ EnablePrefork -> formerly Prefork
+ ListenerNetwork -> previously Network
Tools
LanguageTool

[style] ~56-~56: This adverb was used twice in the sentence. Consider removing one of them or replacing them with a synonym.
Context: ...nablePrintRoutes - ListenerNetwork -> previously Network ### new methods - RegisterCus...

(ADVERB_REPETITION_PREMIUM)


67-67: Fix the missing preposition.

The sentence seems to be missing a preposition.

- ListenTLS -> Use app.Listen() with tls.Config
+ ListenTLS -> Use app.Listen() with the tls.Config
Tools
LanguageTool

[uncategorized] ~67-~67: Possible missing preposition found.
Context: ...ods - Mount -> Use app.Use() instead - ListenTLS -> Use app.Listen() with tls.Config - L...

(AI_HYDRA_LEO_MISSING_OF)


263-263: Rephrase the sentence for clarity.

The sentence can be rephrased to improve clarity.

- We've made some changes to the CORS middleware to improve its functionality and flexibility.
+ We've updated the CORS middleware to enhance its functionality and flexibility.
Tools
LanguageTool

[style] ~263-~263: Consider rephrasing this to strengthen your wording.
Context: ...idating cache entries. ### CORS We've made some changes to the CORS middleware to improve its f...

(MAKE_CHANGES)

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 5e17ab0 and 896bfa6.

Files selected for processing (3)
  • .github/workflows/markdown.yml (1 hunks)
  • docs/intro.md (4 hunks)
  • docs/whats_new.md (10 hunks)
Files skipped from review due to trivial changes (1)
  • .github/workflows/markdown.yml
Additional context used
LanguageTool
docs/intro.md

[uncategorized] ~115-~115: The preposition ‘to’ seems more likely in this position.
Context: ...POST, etc. - path is a virtual path on the server - func(fiber.Ctx) error is...

(AI_HYDRA_LEO_REPLACE_ON_TO)

docs/whats_new.md

[grammar] ~52-~52: It looks like there is a word missing here. Did you mean “listen to config”?
Context: ...ic.md) - app.Config properties moved to listen config - DisableStartupMessage - EnablePre...

(LISTEN_TO_ME)


[style] ~56-~56: This adverb was used twice in the sentence. Consider removing one of them or replacing them with a synonym.
Context: ...nablePrintRoutes - ListenerNetwork -> previously Network ### new methods - RegisterCus...

(ADVERB_REPETITION_PREMIUM)


[uncategorized] ~67-~67: Possible missing preposition found.
Context: ...ods - Mount -> Use app.Use() instead - ListenTLS -> Use app.Listen() with tls.Config - L...

(AI_HYDRA_LEO_MISSING_OF)


[uncategorized] ~198-~198: The official spelling of this programming framework is “Express.js”.
Context: ...king. ### new methods - AutoFormat -> ExpressJs like - Host -> ExpressJs like - Port ->...

(NODE_JS)


[uncategorized] ~199-~199: The official spelling of this programming framework is “Express.js”.
Context: ... AutoFormat -> ExpressJs like - Host -> ExpressJs like - Port -> ExpressJs like - IsProxy...

(NODE_JS)


[uncategorized] ~200-~200: The official spelling of this programming framework is “Express.js”.
Context: ...like - Host -> ExpressJs like - Port -> ExpressJs like - IsProxyTrusted - Reset - Schema ...

(NODE_JS)


[uncategorized] ~203-~203: The official spelling of this programming framework is “Express.js”.
Context: ...ke - IsProxyTrusted - Reset - Schema -> ExpressJs like - SendStream -> ExpressJs like - S...

(NODE_JS)


[uncategorized] ~204-~204: The official spelling of this programming framework is “Express.js”.
Context: ...chema -> ExpressJs like - SendStream -> ExpressJs like - SendString -> ExpressJs like - S...

(NODE_JS)


[uncategorized] ~205-~205: The official spelling of this programming framework is “Express.js”.
Context: ...tream -> ExpressJs like - SendString -> ExpressJs like - String -> ExpressJs like - ViewB...

(NODE_JS)


[uncategorized] ~206-~206: The official spelling of this programming framework is “Express.js”.
Context: ...endString -> ExpressJs like - String -> ExpressJs like - ViewBind -> instead of Bind ###...

(NODE_JS)


[style] ~263-~263: Consider rephrasing this to strengthen your wording.
Context: ...idating cache entries. ### CORS We've made some changes to the CORS middleware to improve its f...

(MAKE_CHANGES)


[uncategorized] ~267-~267: Loose punctuation mark.
Context: ...t Fields - Config.AllowPrivateNetwork: This new field is a boolean that allows...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~273-~273: Loose punctuation mark.
Context: ...updated fields: - Config.AllowOrigins: Now accepts a slice of strings, each re...

(UNLIKELY_OPENING_PUNCTUATION)

Additional comments not posted (12)
docs/intro.md (7)

57-58: LGTM!

The change adds a useful comment to clarify the immutability of the variable.


68-68: LGTM!

The change adds a useful comment to clarify the Immutable setting.


84-90: LGTM!

The change adds a useful comment to clarify the "Hello, World" example.


123-123: LGTM!

The change adds a useful comment to clarify the simple route example.


133-134: LGTM!

The change adds a useful comment to clarify the use of route parameters.


144-148: LGTM!

The change adds a useful comment to clarify the use of optional route parameters.


158-159: LGTM!

The change adds a useful comment to clarify the use of wildcards in route parameters.

docs/whats_new.md (5)

10-10: LGTM!

The change adds a useful caution note indicating that the section is a draft.


23-23: LGTM!

The change adds a useful overview list of changes in Fiber v3.


225-228: LGTM!

The change adds a useful list of changed methods in Fiber v3.


236-236: LGTM!

The change adds a useful note about the new client package in Fiber v3.


294-294: LGTM!

The change adds a useful note about the removal of filesystem middleware.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 896bfa6 and ac83bac.

Files selected for processing (6)
  • .github/workflows/auto-labeler.yml (1 hunks)
  • .github/workflows/benchmark.yml (1 hunks)
  • .github/workflows/codeql-analysis.yml (1 hunks)
  • .github/workflows/linter.yml (1 hunks)
  • .github/workflows/test.yml (1 hunks)
  • .github/workflows/vulncheck.yml (1 hunks)
Files skipped from review due to trivial changes (6)
  • .github/workflows/auto-labeler.yml
  • .github/workflows/benchmark.yml
  • .github/workflows/codeql-analysis.yml
  • .github/workflows/linter.yml
  • .github/workflows/test.yml
  • .github/workflows/vulncheck.yml

@ReneWerner87 ReneWerner87 merged commit 9463a8f into main Jul 11, 2024
16 of 17 checks passed
@gaby gaby deleted the markdownlint branch July 21, 2024 20:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

🧹 [Maintenance]: Update docs to use a consistent indentation style
2 participants